/**
 * @author : 乔磊磊
 * @ide    : WebStorm
 * @date   : 2025/2/23 星期日 18:16
 * @desc   :web端导出json文件
 */
// @ts-ignore
import {HTML5} from "cc/env"

/**
 * 生成json文件
 * @param data 直接传入对象，不需要转成字符串
 * @param fileName 要保存的文件名
 */
export function creatJsonFile(data: object, fileName: string) {
    let content = JSON.stringify(data)
    if (!fileName.includes(".json")) {
        fileName += ".json"
    }
    saveForBrowser(content, fileName)
}

/**
 * 存字符串内容到文件。
 * @param textToWrite  - 要保存的文件内容
 * @param fileNameToSaveAs - 要保存的文件名
 */
export function  saveForBrowser(textToWrite: string, fileNameToSaveAs: string) {
    if (HTML5) {
        let textFileAsBlob = new Blob([textToWrite], {
            type: "application/json",
        })
        let downloadLink = document.createElement("a")
        downloadLink.download = fileNameToSaveAs
        downloadLink.innerHTML = "Download File"
        if (window.webkitURL != null) {
            downloadLink.href = window.webkitURL.createObjectURL(textFileAsBlob)
        }
        downloadLink.click()
    }
}
